package sort.on2;

/**
 * 冒泡排序：比较相邻元素，不符合则交换，每一轮最大（或最小）浮到最后
 * 稳定、原地排序
 *
 * @author yeyangtao created at 15:03 2020/9/25
 */
public class BubbleSort {
    public static void bubbleSort(int[] a) {
        int size = a.length;
        for (int i = 0; i < size; i++) {
            //未有数据交换表示已完成排序
            boolean flag = false;
            for (int j = 0; j < size - i - 1; j++) {
                if (a[j] > a[j + 1]) {
                    int temp = a[j + 1];
                    a[j + 1] = a[j];
                    a[j] = temp;
                    flag = true;
                }
            }
            if (!flag) break;
        }
    }
}
